//package SpringMVC入门测试.main.java.com.itheima.aop;
//
//import org.aspectj.lang.ProceedingJoinPoint;
//import org.aspectj.lang.Signature;
//import org.aspectj.lang.annotation.Around;
//import org.aspectj.lang.annotation.Aspect;
//import org.aspectj.lang.annotation.Pointcut;
//import org.springframework.stereotype.Component;
//
//@Component
//@Aspect
//public class ProjectAdvice {
//    //定位到所有的业务层方法
//    @Pointcut("execution(* com.itheima.controller.*Service.*(..))")
//    private void servicePt(){}
//
//    @Around("servicePt()")
//    public void test(ProceedingJoinPoint pjp) throws Throwable {
//        //获取执行签名对象
//        Signature signature = pjp.getSignature();
//        //通过签名对象获取执行的类型（接口名）
//        String className = signature.getDeclaringTypeName();
//        //通过签名对象获取执行的方法名
//        String methodName = signature.getName();
//        long start=System.currentTimeMillis();
//
//        for (int i = 0; i < 10000; i++) {
//            pjp.proceed();
//        }
//
//        long end=System.currentTimeMillis();
//
//        System.out.println(className+"."+methodName+"方法万次执行时间为："+(end-start));
//    }
//}
